僵尸网络程序的结构由什么组成
僵尸网络程序的结构由以下模块组成:
命令与控制模块:命令与控制(C&C)模块是整个僵尸程序的核心,用于实现与僵尸网络控制器的交互,接收攻击者的控制命令,进行解析和执行,并将执行结果反馈给僵尸网络控制器。
传播模块:传播模块通过各种不同的方式将僵尸程序传播到新的主机,使其加入僵尸网络接受攻击者的控制,从而扩展僵尸网络的规模。僵尸程序可以按照传播策略分为自动传播型僵尸程序和受控传播型僵尸程序两大类,而僵尸程序的传播方式包括通过远程攻击软件漏洞传播、扫描NetBIOS弱密码传播、扫描恶意代码留下的后门进行传播、通过发送邮件病毒传播、通过文件系统共享传播等。此外,最新的僵尸程序也已经开始结合即时通信软件和P2P文件共享软件进行传播了。
信息窃取模块:信息窃取模块用于获取受控主机信息,主要包括系统资源情况、进程列表、开启时间、网络带宽和速度等。同时,搜索并窃取受控主机上有价值的敏感信息,如软件注册码、电子邮件列表、账号口令等。
主机控制:僵尸网络中的主机控制模块是攻击者利用受控的大量僵尸主机(肉鸡)完成各种不同攻击目标的模块集合。目前,主流僵尸程序中实现的僵尸主机控制模块包括DDoS攻击模块、架设服务模块、发送垃圾邮件模块及单击欺诈模块等。
下载与更新:下载与更新模块为攻击者提供向受控主机注入二次感染代码及更新僵尸程序的功能,使其能够随时在僵尸网络控制的大量主机上更新和添加僵尸程序及其他恶意代码,以实现不同攻击目的。
绕过检测与对抗分析:绕过检测与对抗分析模块包括对僵尸程序的多态、变形、加密、通过Rootkit方式进行实体隐藏,以及检查调试程序(debugger)的存在、识别虚拟机环境、杀死反病毒进程、阻止反病毒软件升级等功能。其目标是使得僵尸程序能够绕过受控主机的使用者和反病毒软件的检测,并对抗反病毒软件的检测,从而提高僵尸网络的生存能力。